 package com.example.fw;

import java.io.IOException;
import java.util.Properties;



public class ApplicationManager {
	
	private Properties properties;
	private ContactHelper contactHelper;
	private ProcessHelper processHelper;
	private AutoItHelper autoItHelper;
	private Properties props;
	
	public ApplicationManager(Properties properties) {
	}
	
	public void start() throws IOException {
		getProcessHelper().startAppUnderTest();
	}
	
	public void stop() throws IOException {
		getProcessHelper().stopAppUnderTest();
	}

	public ContactHelper getContactHelper() {
		if (contactHelper == null) {
			contactHelper = new ContactHelper(this);
		}
		return contactHelper;
	}
	
	public ProcessHelper getProcessHelper() {
        if(processHelper == null) {
           processHelper = new ProcessHelper(this);
                }
        return processHelper;
}

	public AutoItHelper getAutoItHelper() {
		if(autoItHelper == null) {
            autoItHelper = new AutoItHelper(this);
                 }
         return autoItHelper;
	}
	
	 public String getProperty(String key){
         return props.getProperty(key);
 }

 public String getProperty(String key, String defaultValue) {
         return props.getProperty(key, defaultValue);
 }

}